Col. Charles Duncan McPherson (April 11, 1877—August ?, 1970) was a soldier and politician from Manitoba, Canada. He served in the Legislative Assembly of Manitoba from 1910 to 1914, and again from 1915 to 1922. McPherson was a Liberal, and served as a cabinet minister in the government of Tobias C. Norris.
McPherson was born in Forest, Ontario, and educated in the neighbouring area. He later moved to Manitoba, and worked as a publisher. He served as president of the Western Canada Press Association in 1906-07, and was secretary of the Lakeside Liberal Association from 1902 to 1910. He also became secretary of the Portage St. Andrew Society in 1909.
He served as lieutenant and captain in the 12th Manitoba Dragoons from 1904 to 1908, and later as Major of the 18th Mounted Rifles from 1908 until 1913, when he was promoted to Lieutenant-Colonel.
McPherson was first elected to the Manitoba legislature in the 1910 provincial election, defeating Conservative incumbent Edwin D. Lynch by 68 votes in the Lakeside constituency. Manitoba was governed by Rodmond P. Roblin's Conservative Party in this period, and McPherson served as an opposition member for the next four years. In the 1914 election, he lost to Conservative candidate John J. Garland by ten votes.
Early in 1915, the Roblin government was forced to resign from office amid a corruption scandal. The Liberals won a landslide majority in the 1915 provincial election. McPherson was returned for the Lakeside constituency, defeating Garland by 163 votes. He did not serve in the legislature at its convening, however, having been previously called to active service in World War I.
McPherson traveled with the first Canadian contingent to England at the start of the war, but was called home again to take second command of the 32nd Battalion. Promoted to the officer class at Shornecliffe, he was the first Canadian officer to tour the western front before Canadian soldiers were sent into the area. McPherson then served in France for twenty months as second-in-command of the 28th Battalion. He received command of the 31st Alberta Battalion in 1917, and led this battalion at the Battle of Passchendale. McPherson was twice decorated for his war service.
He returned to Manitoba after the war to take his seat in the legislature, and served as a backbench supporter of Tobias C. Norris's government.
The Liberals were reduced to a minority government in the 1920 provincial election. McPherson was re-elected in Lakeside, defeating Conservative E. Herbert Muir by 23 votes. On January 20, 1921, he was appointed to Norris's cabinet as Minister of Public Works.
During this period of Canadian history, newly-appointed ministers were required to resign their seats and seek the renewed consent of their electorate to assume office. The resulting by-elections were often formalities, as many ministers were unopposed following their appointments. McPherson, however, was forced to contest another challenge from Muir, who was now campaigning as a Farmer's candidate. McPherson won by 156 votes, and continued to serve in cabinet.
In the 1922 provincial election, McPherson left the Lakeside constituency to challenge Conservative party leader Fawcett Taylor in Portage la Prairie. Taylor won the challenge in a close contest, defeating McPherson by 129 votes. The Liberals were defeated provincially by the United Farmers of Manitoba, and McPherson resigned from cabinet with the rest of the Norris ministry on August 8, 1922.